package com.mifengkong.kotlincommon.recyclerview.refreshload.refresh

import android.content.Context
import android.view.View
import android.view.ViewGroup

/**
 * Created by jack on 2018/6/20
 */
abstract class RefreshViewCreator {

    /**
     * 获取下拉刷新的View
     */
    abstract fun getRefreshView(context: Context, parent: ViewGroup): View

    /**
     * 正在下拉
     *
     * @param currentDragHeight   当前拖动高度
     * @param refreshViewHeight   总体刷新高度
     * @param currentRefreshState 当前状态
     */
    abstract fun onDropDown(currentDragHeight: Int, refreshViewHeight: Int, currentRefreshState: Int)

    /**
     * 正在刷新中...
     */
    abstract fun onRefreshing()

    /**
     * 停止刷新
     */
    abstract fun onStopRefresh()

    /**
     * 重置下拉刷新
     */
    abstract fun restoreRefresh()

}